"""
# Definition for a Node.
class Node:
def __init__(self, val, prev, next, child):
self.val = val
self.prev = prev
self.next = next
self.child = child
"""
class Solution:
def trav(self,head1):
root = head1
if not root:
return None
while root:
a = None
if root.child:
a = self.trav(root.child)
if a:
a.prev = head1
temp = root.next
root.next = a
while root.next:
root = root.next
root.next = temp
root = root.next
return head1
def flatten(self, head: 'Node') -> 'Node':
if not head:
return None
root = self.trav(head)
temp = root
temp.prev = None
temp.child= None
last = temp
temp = temp.next
while temp:
temp.child = None
temp.prev = last
last = temp
temp = temp.next
return root
734A - Anton and Danik | 1300B - Assigning to Classes |
1647A - Madoka and Math Dad | 710A - King Moves |
1131A - Sea Battle | 118A - String Task |
236A - Boy or Girl | 271A - Beautiful Year |
520B - Two Buttons | 231A - Team |
479C - Exams | 1030A - In Search of an Easy Problem |
158A - Next Round | 71A - Way Too Long Words |
160A - Twins | 1A - Theatre Square |
1614B - Divan and a New Project | 791A - Bear and Big Brother |
1452A - Robot Program | 344A - Magnets |
96A - Football | 702B - Powers of Two |
1036A - Function Height | 443A - Anton and Letters |
1478B - Nezzar and Lucky Number | 228A - Is your horseshoe on the other hoof |
122A - Lucky Division | 1611C - Polycarp Recovers the Permutation |
432A - Choosing Teams | 758A - Holiday Of Equality |